home *** CD-ROM | disk | FTP | other *** search
/ Nibble Magazine / nib09.dsk / ELECTRIC HOURGLASS.bas < prev    next >
BASIC Source File  |  2023-02-26  |  4KB  |  109 lines

  1. 1  REM  ******************************
  2. 2  REM  *  << ELECTRIC HOURGLASS >>  *
  3. 3  REM  *     BY PAUL RAYMER         *
  4. 4  REM  *    COPYRIGHT (C) 1982      *
  5. 5  REM  *    BY MICRO-SPARC INC      *
  6. 6  REM  *    LINCOLN, MA. 01773      *
  7. 7  REM  *    ALL RIGHTS RESERVED     *
  8. 8  REM  ******************************
  9. 100  TEXT : HOME : CLEAR : REM  3K
  10. 240  GOSUB 1180
  11. 250  INPUT "HOW MANY MINUTES SHALL WE TIME? ";MI
  12. 260  HOME : VTAB 7
  13. 270  PRINT "WHAT KIND OF SAND SHALL WE USE...": PRINT : PRINT "(M)OHAVE DESERT  (N)EGEV DESERT         (G)OBI DESERT    (S)AHARA DESERT ";: GET AN$
  14. 280  IF AN$ = "M"  THEN F = 25:S = 10
  15. 290  IF AN$ = "N"  THEN F = 50:S = 10
  16. 300  IF AN$ = "G"  THEN F = 50:S = 5
  17. 310  IF AN$ = "S"  THEN F = 100:S = 5
  18. 320  HOME 
  19. 330  FOR HG = 1 TO MI
  20. 340  GR 
  21. 350 R = 37
  22. 360 K =  INT(14 * RND(1)) +1
  23. 370  COLOR= 15
  24. 380  REM 
  25. 390  REM  BUILD GLASS
  26. 400  REM 
  27. 410  HLIN 13,27 AT 0: HLIN 13,27 AT 39
  28. 420  VLIN 1,7 AT 13: VLIN 32,39 AT 13
  29. 430  VLIN 1,7 AT 27: VLIN 32,39 AT 27
  30. 440 X = 14:Y = 21
  31. 450  FOR A = 1 TO 12  STEP 2: PLOT X,A +7: PLOT X,A +8: PLOT Y,A +19: PLOT Y,A +20:X = X +1:Y = Y +1: NEXT 
  32. 460 X = 14:Y = 21
  33. 470  FOR A = 12 TO 1  STEP  -2: PLOT X,A +18: PLOT X,A +19: PLOT Y,A +6: PLOT Y,A +7:X = X +1:Y = Y +1: NEXT A
  34. 480  REM 
  35. 490  REM  FILL TOP GLASS
  36. 500  REM 
  37. 510  COLOR= K
  38. 520 A = 17:B = 19:C = 21
  39. 530  FOR Z = 1 TO 2
  40. 540  FOR Y = B TO C
  41. 550  PLOT Y,A
  42. 560  NEXT Y
  43. 570 A = A -1
  44. 580  NEXT Z
  45. 590 B = B -1:C = C +1
  46. 600  IF A <6  THEN 620
  47. 610  GOTO 530
  48. 620  HLIN 14,26 AT 38
  49. 630  REM 
  50. 640  REM  START TIMER
  51. 650  REM 
  52. 660  COLOR= 0
  53. 670  READ S,J
  54. 680  IF S = 0  THEN 900
  55. 690  PLOT S,J
  56. 700  COLOR= K
  57. 710  READ S,J
  58. 720  PLOT S,J
  59. 730  IF S = 20  THEN R = R -1
  60. 740  REM 
  61. 750  REM  CLOCK ADJUST
  62. 760  REM 
  63. 770  FOR Z = 1 TO 241: NEXT Z
  64. 780  REM 
  65. 790  REM  SAND DROP
  66. 800  REM 
  67. 810  FOR D = 19 TO R
  68. 820  COLOR= K
  69. 830  PLOT 20,D
  70. 840  COLOR= 0
  71. 850  PLOT 20,D -1
  72. 860  NEXT D
  73. 870  POKE 768,F +NS: POKE 769,S: CALL 770: REM  OPTION...NS = NS + 1
  74. 880  GOTO 660
  75. 890  REM 
  76. 900  REM  ELAPSED TIME
  77. 910  REM 
  78. 920  FOR X = 1 TO HG
  79. 930  PRINT  CHR$(7)
  80. 940  NEXT X
  81. 950  IF X = 2  THEN  HOME : HTAB 18: PRINT "1 MINUTE": GOTO 970
  82. 960  HOME : HTAB 17: PRINT HG;" MINUTES"
  83. 970  RESTORE :NS = 0
  84. 980  NEXT HG
  85. 990  END 
  86. 1000  REM 
  87. 1010  REM  THIS IS THE SAND
  88. 1020  REM 
  89. 1030  DATA  20,6,20,37,19,6,19,37,21,6,21,37,20,7,20,36,19,7,19,36,21,7,21,36
  90. 1040  DATA  20,8,20,35,18,6,18,37,22,6,22,37,20,9,20,34,19,8,19,35,21,8,21,35,21,9,22,36
  91. 1050  DATA  22,7,22,35,22,8,23,37,23,6,21,34,21,10,20,33,20,10,19,34,19,9,18,36,22,9,18,35
  92. 1060  DATA  20,11,17,37,18,7,17,36,17,6,16,37,23,7,20,32,21,11,21,33,22,10,23,36,16,6,24,37
  93. 1070  DATA  16,6,18,34,20,12,17,35,18,8,17,34,17,7,19,33,17,8,18,33,24,6,15,37,19,10,16,36
  94. 1080  DATA  16,7,23,35,18,9,19,32,23,8,16,35,24,7,24,36,25,6,22,34,21,12,25,37,23,9,22,33
  95. 1090  DATA  19,11,20,31,23,10,23,34,24,8,26,37,22,11,26,36,18,10,21,32,22,12,25,36
  96. 1100  DATA  20,13,24,35,21,13,16,34,15,6,15,36,15,7,18,32,15,8,15,35,14,6,14,37,24,9,17,33
  97. 1110  DATA  14,7,25,35,16,8,24,34,17,9,18,31,24,10,19,31,19,12,20,30,20,14,26,35,25,7,22,32
  98. 1120  DATA  25,8,14,36,26,6,21,31,26,7,25,34,19,13,19,30,20,15,17,32,21,14,21,30,18,11,23,33
  99. 1130  DATA  17,10,16,33,16,9,15,34,25,9,14,35,15,9,24,33,22,13,22,31,16,10,20,29,17,11,23,32
  100. 1140  DATA  18,12,26,34,23,11,17,31,24,11,16,32,21,15,21,29,19,14,14,34,23,12,20,28
  101. 1150  DATA  23,13,15,33,16,11,23,31,22,14,18,30,18,13,25,33,17,12,22,30,22,15,24,32,17,13,19,29
  102. 1160  DATA  18,14,18,29,20,16,21,28,19,15,19,28,21,16,22,29,18,15,17,30,20,17,24,31,19,16,16,31,21,17,23,30,19,17,20,27,0,0
  103. 1170  REM 
  104. 1180  REM  SINGING SANDS
  105. 1190  REM 
  106. 1200  POKE 770,173: POKE 771,48: POKE 772,192: POKE 773,136: POKE 774,208: POKE 775,5: POKE 776,206: POKE 777,1
  107. 1210  POKE 778,3: POKE 779,240: POKE 780,9: POKE 781,202: POKE 782,208: POKE 783,245: POKE 784,174: POKE 785,0: POKE 786,3
  108. 1220  POKE 787,76: POKE 788,2: POKE 789,3: POKE 790,96
  109. 1230  RETURN